class Solution(object):
    def get_all_subarrays(self, arr):
        all_subarrays = []
        for i in range(len(arr)):
            for j in range(i, len(arr)):
                all_subarrays.append(arr[i:j+1])
        return all_subarrays

    def longestMonotonicSubarray(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        subarrays = self.get_all_subarrays(nums)
        length = 1
        for subarray in subarrays:
            if len(subarray) == 1:
                continue
            flag1 = True   # 判断当前的子数组是不是严格递增子序列：
            flag2 = True   # 判断当前的子数组是不是严格递减子序列：
            for i in range(len(subarray) - 1):
                if flag1 and subarray[i] >= subarray[i+1]:
                    flag1 = False
                if flag2 and subarray[i] <= subarray[i+1]:
                    flag2 = False
            # 如果满足条件则更新长度
            if flag1 or flag2:
                length = max(length, len(subarray))
        return length